Methods and apparatus to configure process control system inputs and outputs

ABSTRACT

Methods and apparatus to configure process control system inputs and outputs are disclosed. A disclosed example method comprises obtaining a tag of a process control device from the input/output device, and associating the process control device with a process control module based on the obtained tag.

FIELD OF THE DISCLOSURE

This disclosure relates generally to process control systems and, moreparticularly, to methods and apparatus to configure process controlsystem inputs and outputs.

BACKGROUND

Process control systems, like those used in chemical, petroleum,pharmaceutical, pulp and paper, and/or other manufacturing processes,typically include one or more process controllers communicativelycoupled to at least one host (e.g., an operator workstation) and to oneor more process control devices (e.g., field devices) configured tocommunicate via analog, digital or combined analog/digital communicationsignals and/or protocols. The field devices, which may be, for example,device controllers, valves, valve actuators, valve positioners,switches, transmitters (e.g., temperature, pressure, flow rate, andchemical composition sensors) and/or any combinations thereof, performfunctions within the process control system such as opening and/orclosing valves and measuring and/or inferring process parameters. Aprocess controller receives signals indicative of process measurementsmade by the field devices and/or other information pertaining to thefield devices, uses this information to implement a control routine, andgenerates control signals that are sent over buses and/or othercommunication lines to the field devices to control the operation of theprocess control system.

The field devices may be communicatively coupled to the processcontroller(s) using two-wire interfaces in a point-to-point (e.g., onefield device communicatively coupled to a field device bus) and/or amulti-drop (e.g., a plurality of field device communicatively coupled toa field device bus) wiring connection arrangements, and/or with wirelesscommunications. Some field devices are configured to operate usingrelatively simple commands and/or communications (e.g., an ON commandand an OFF command). Other more complex field devices may require morecommands and/or more communication information, which may or may notinclude simple commands. For example, more complex field devices maycommunicate analog values with digital communications superimposed onthe analog values using, for example, a Highway Addressable RemoteTransducer (HART) communication protocol. Some field devices may useentirely digital communications (e.g., a FOUNDATION Fieldbuscommunication protocol).

In a process control system, each field device is typically coupled to aprocess controller via an input/output (I/O) card and/or I/O port of anI/O gateway, and a respective communication medium (e.g., a two-wirecable, a wireless link, and/or an optical fiber). Thus, a plurality ofcommunication media are required to communicatively couple the pluralityof field devices to the process controller(s). Often, the plurality ofcommunication media coupled to the field devices are routed through oneor more field junction boxes, at which point, the plurality ofcommunication media are coupled to respective communication media (e.g.,respective two-wire conductors) of a multi-conductor cable used tocommunicatively couple the field devices to the process controller(s)via one or more I/O cards.

Information from the field devices and/or the process controller(s) isusually made available over a data highway and/or communication networkto one or more other hardware devices, such as operator workstations,personal computers, data historians, report generators, centralizeddatabases, etc. Such devices are typically located in control roomsand/or other locations remotely situated relative to the harsher plantenvironment. These hardware devices, for example, run applications thatenable an operator to perform any of a variety of functions with respectto the process(es) of a process plant, such as changing settings of theprocess control routine(s), modifying the operation of the controlmodules within the process controllers and/or the field devices, viewingthe current state of the process(es), viewing alarms generated by fielddevices and/or controllers, simulating the operation of the process(es)for the purpose of training personnel and/or testing the process controlsoftware, maintaining and/or updating a configuration database, etc.

As an example, the DeltaV™ control system sold by Fisher-RosemountSystems, Inc. an Emerson Process Management company supports multipleapplications stored within and/or executed by different devices locatedat potentially diverse locations within a process plant. A configurationapplication, which resides in and/or is executed by one or more operatorworkstations, enables users to create and/or change process controlmodules, and/or download process control modules via a data highwayand/or communication network to dedicated process controllers.Typically, these control modules are made up of communicatively coupledand/or interconnected function blocks that perform functions within thecontrol scheme based on received inputs and/or that provide outputs toother function blocks within the control scheme. In addition to defininga control scheme, the configuration application also allows theconfiguration, allocation and/or definition of a specific I/O portand/or I/O channel for each field device. The I/O ports and/or I/Ochannels for field devices are subsequently configured into the processcontrollers and/or I/O gateways to facilitate communication between theprocess controllers and the field devices.

The configuration application may further allow a configuration engineerand/or operator to create and/or change operator interfaces that areused, for example, by a viewing application to display data to anoperator and/or to enable the operator to change settings and/orparameters, such as set points, within the process control routines.Each process controller and, in some cases, field devices, stores and/orexecutes a controller application that runs the control modules assignedto implement actual process control functionality. The viewingapplications, which may be run on, for example, one or more operatorworkstations, receive data from the controller application via the datahighway, and/or display such data for process control system engineers,operators, or other users using user interfaces that may provide any ofa number of different views, such as an operator's view, an engineer'sview, a technician's view, etc. A data historian application istypically stored in and/or executed by a data historian device thatcollects and/or stores some or all of the data provided across the datahighway. A configuration database application may run in yet anothercomputer communicatively coupled to the data highway to store thecurrent process control routine configuration(s) and/or data associatedtherewith. Alternatively, configuration application(s), viewingapplication(s), data historian application(s), configuration database(s)and/or configuration database application(s) may be located in and/orexecuted by any number of workstations including, for example, a singleworkstation.

SUMMARY

Methods and apparatus for configuring process control system inputsand/or outputs are disclosed. Input/Output (I/O) devices (e.g., I/Oslices) that electrically couple process control devices (e.g., fielddevices) to I/O gateways and that can be programmed with and/or whichcan automatically obtain field device tags for the field devices areemployed. A field device tag is a logical entity that includes the typeof the field device and/or an assigned name (i.e., a tag) for the fielddevice. For example, an installer can program into an I/O slice the tagof the field device that is electrically coupled (i.e., wired) to theI/O slice. Additionally or alternatively, a smart field device (e.g., aFieldbus device) can be programmed with the tag and the the I/O slicecan automatically obtain the tag directly from the smart field device.Such field device tags is used to automate the association of fielddevices to particular I/O ports and/or I/O channels and, thus, toparticular control modules (e.g., module class objects). An I/O gatewayis used to sense the I/O slices (and their associated field device tags)that are electrically coupled to the I/O ports and/or I/O channels ofthe I/O gateway. The sensed field device tags are provided to aconfiguration application that compares the sensed field device tags tofield device tags previously configured into process control modules.When matches are identified and/or located, the sensed I/O port and/orI/O channel for the matching field device may be automatically bound tothe process control module, thereby, automatically coupling the processcontrol module to its intended field device(s).

Additionally or alternatively, field device tags can be used to verify aprior configuration of field devices to particular I/O ports and/or I/Ochannels. An I/O gateway is used to sense the I/O slices (and theirassociated field device tags) that are communicatively coupled to theI/O ports and/or I/O channels of the I/O gateway. The sensed fielddevice tags are provided to a configuration application that comparesthe sensed field device tags to field device tags previously configuredinto process control modules. When a match is identified and/or located,the sensed I/O port and/or I/O channel for the sensed field device arecompared to the I/O port and/or I/O channel previously configured intothe control module for the field device. If the I/O port and/or I/Ochannel do not match, an operator and/or installer can be notified sothat the field device can be electrically coupled to the correct I/Oslice. Process control system I/O mismatches can be indicated via aconfiguration application user interface and/or may be indicated via anerror indicator on the I/O slice (e.g., a light emitting diode (LED)).Additionally or alternatively, the matching of configured field devicetags and sensed field device tags can be performed by the I/O gatewaywith a mismatch displayed on the sensed I/O slice and/or a correspondingerror indication provided to the configuration application. In eithercase, the I/O gateway is loaded with a configuration that includes foreach field device tag an assigned I/O port and/or I/O channel. Thedownloaded configuration is compared to the sensed field device tags,I/O ports and I/O channels to identify any mismatches.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic illustration of an example process control system.

FIG. 2 is an illustration of an example user interface that may be usedto display a mapping of field devices to module class objects.

FIG. 3 is a flowchart representative of an example process that may beperformed to install a field device.

FIGS. 4 and 5 are flowcharts representative of example processes thatmay be performed to configure process input/output (I/O) for moduleclass objects.

FIGS. 6 and 7 are flowcharts representative of example processes thatmay be performed to configure an I/O gateway.

FIG. 8 is a schematic illustration of an example processor platform thatmay be used and/or programmed to carry out the example processes ofFIGS. 3, 4, 5, 6 and/or 7 to implement any or all of the methods andapparatus described herein.

DETAILED DESCRIPTION

Although the following describes example apparatus and methodsincluding, among other components, software and/or firmware executed onhardware, it should be noted that such examples are merely illustrativeand, thus, should not be considered as limiting. For example, it iscontemplated that any or all of these hardware, software, and firmwarecomponents could be embodied exclusively in hardware, exclusively insoftware, or in any combination of hardware and software. Accordingly,while the following describes example apparatus and methods, persons ofordinary skill in the art will readily appreciate that the examplesprovided are not the only way to implement such apparatus and methods.

FIG. 1 is a schematic illustration of an example process control systemthat includes a control room 110, a process controller area 120, atermination area 130, and one or more process areas, two of which areillustrated in FIG. 1 with reference numerals 140 and 150. The examplecontrol room 110 of FIG. 1 includes one or more workstations (one ofwhich is illustrated in FIG. 1 with reference numeral 112) within anenvironment that is safely accessible by humans. The example workstation112 of FIG. 1 implements and/or executes user applications (e.g.,configuration applications) that users (e.g., engineers, operators,etc.) can utilize and/or access to configure and/or control operationsof the process control system by, for example, changing variable values,process control functions, etc.

The example workstation 112 of FIG. 1 is also used to configure inputsand outputs for the example process control system. As an example, theDeltaV™ control system sold by Fisher-Rosemount Systems, Inc. an EmersonProcess Management company supports the configuration of process controlfunctions using module and/or unit class objects. During theconfiguration of such objects, a field device tag is configured (e.g.,associated) with each input and/or output block of each object. As usedherein, a field device tag is a logical entity that includes informationidentifying the type of the field device and an assigned name (i.e.,tag) for the field device. In some examples, the configuration alsoincludes the assignment of the field device tag to a particularinput/output (I/O) port and/or I/O channel of an I/O gateway. In otherexamples, the binding and/or associating of a field device tag to aparticular I/O port and/or I/O channel of an I/O gateway is completedautomatically, as described in more detail below. If the configurationof the objects includes the assignment of the field device tags to I/Oports and/or I/O channels, the field device tags can, as describedbelow, be used to verify the configured assignment of I/O ports and/orI/O channels against the actual wiring of the field devices to I/O portsand/or I/O channels. For example, field device tags can be configured toprocess control modules by importing instrument lists in the form of aspreadsheet, comma-separated values and/or eXtensible Markup Language(XML) files. Such instrument lists may also used to configure I/Odevices (e.g., I/O slices) with the device tags for attached fielddevices 142A-C, 152A-C.

Example methods for configuring a set of module objects for processcontrol systems are described in U.S. Pat. No. 7,043,311, entitled“Module Class Objects in a Process Plant Configuration System”; and U.S.patent application Ser. No. 11/537,138, entitled “Methods and ModuleClass Objects to Configure Equipment Absences in Process Plants,” andfiled on Sep. 29, 2006. U.S. Pat. No. 7,043,311 and U.S. patentapplication Ser. No. 11/537,138 are each hereby incorporated byreference in their entireties.

The example process areas 140, 150 of FIG. 1 each include one or moreprocess control devices (e.g., field devices) 142A-C, 152A-C,respectively, that perform operations (e.g., controlling valves,controlling motors, controlling boilers, monitoring, measuringparameters, etc.) associated with performing a particular process (e.g.,a chemical process, a petroleum process, a pharmaceutical process, apulp and paper process, etc.). One or both of the process areas 140, 150may not be accessible by humans due to harsh environment conditions(e.g., relatively high temperatures, airborne toxins, unsafe radiationlevels, etc.)

The example process controller area 120 of FIG. 1 includes one or moreprocess controllers (one of which is illustrated in FIG. 1 withreference numeral 122) communicatively coupled to the exampleworkstation 112 and to the example field devices 142A-C, 152A-C via oneor more I/O gateways (one of which is illustrated in FIG. 1 withreference numeral 124). The example I/O gateway 124 of FIG. 1 includesone or more I/O ports 126A, 126B that communicatively couple the I/Ogateway 124 to one or more wiring cabinets (one of which is illustratedin FIG. 1 with reference numeral 132). The example I/O ports 126A, 126Bof FIG. 1 translate information received from the field devices 142A-C,152A-C to a signal, format and/or protocol compatible with the processcontroller 122 and/or translate information from the process controller122 to a signal, format and/or protocol compatible with the fielddevices 142A-C, 152A-C. As illustrated in FIG. 1, each I/O port 126A,126B can process input and/or output signals for more than one fielddevice 142A-C, 152A-C. As such, each I/O port 126A, 126B assignsdifferent field devices 142A-C, 152A-C to different I/O channels of anI/O port 126A, 126B.

While the example I/O gateway 124 of FIG. 1 is illustrated separatelyfrom the example process controller 122, the process controller 122 mayimplement the I/O gateway 124. Moreover, the process controller 122 mayimplement any number of I/O gateways 124, and/or any number and/or typesof I/O ports 126A, 126B.

The example process controller 122 of FIG. 1 automates control of thefield devices 142A-C, 152A-C by executing one or more process controlstrategies and/or routines constructed and/or configured via the exampleworkstation 112. An example process strategy and/or routine involvesmeasuring a pressure using a pressure sensor field device (e.g., theexample field device 152A) and automatically sending a command to avalve positioner (e.g., the example device 152B) to open or close afluid control valve (not shown) based on the pressure measurement. Tocorrectly control the field devices 142A-C, 152A-C, the example processcontroller 122 and the example I/O gateway 124 are configured withparameters that specify which field device 142A-C, 152A-C iselectrically and/or communicatively coupled to which I/O port 126A, 126Band/or which I/O channel of an I/O port 126A, 126B at the I/O gateway124.

The example termination area 130 of FIG. 1 includes the example wiringcabinet 132 that enables the process controller 122 to communicate withone or more of the field devices 142A-C, 152A-C in one or more of theprocess areas 140, 150. In particular, the example wiring cabinet 132 ofFIG. 1 includes a plurality of I/O slices (six of which are illustratedin FIG. 1 with reference numerals 134A-F) that are used to translate,marshal, organize, or route signals between the example field devices142A-C, 152A-C and one or more of the example I/O ports 126A, 126B. Theexample I/O slices 134A-F of FIG. 1 are smart devices that can beprogrammed with and/or automatically obtain information about acommunicatively coupled field device 142A-C, 152A-C. For example, theexample I/O slices 134A-F are configured to store a value and/or stringthat identifies the type of a coupled field device 142A-C, 152A-C, and alogical name and/or device tag that uniquely identifies the field device142A-C, 152A-C. For instance, the example I/O slice 134A containsinformation identifying the example field device 142A as a temperaturetransmitter having a device tag of “TT-101.”

As described above, device tags are used to logically associate and/orassign an input and/or output block of a control module to a particularfield device 142A-C, 152A-C. Once a device tag is associated with aparticular I/O port 126A, 126B and/or I/O channel, the field devicebecomes bound to the control module. Such process control system I/Obinding may occur automatically based upon the sensing of I/O slices134A-F and/or field devices 142A-C-, 152A-C at the example I/O gateway124. Additionally or alternatively, such binding may occur duringconfiguration of the process control module. When binding occurs duringconfiguration of the control module, the example I/O gateway 124 can beused to sense the I/O slices 134A-F and/or the field devices 142A-C,152A-C coupled to the I/O gateway 124, thereby, allowing for theverification of the proper binding of process control modules to theirrespective field devices 142A-C, 152A-C.

The example I/O slices 134A-F of FIG. 1 can be programmed with thedevice tag of a field device 142A-C, 152A-C by a hand-held programmerand/or tagger 160. The example tagger 160 of FIG. 1 may becommunicatively coupled to an I/O slice 134A-F and used to programinformation into the I/O slice 134A-F (e.g., field device type and fielddevice tag). In some instances, the I/O slices 134A-F are programmed aseach of the field devices 142A-C, 152A-C is wired to an I/O slice134A-F. However, any sequence of wiring field devices 142A-C, 152A-C toI/O slices 134A-F and programming I/O slices 134A-F may be used.Additionally or alternatively, an I/O slice 134A-F can automaticallyobtain the device type and/or logical tag of a smart field device142A-C, 152A-C (e.g., a Fieldbus device) directly from the smart fielddevice 142A-C, 152A-C.

To indicate at the wiring cabinet 132 which I/O slice 134A-F isconnected to which field device 142A-C, 152A-C, each of the example I/Oslices 134A-F of FIG. 1 is provided with a termination labeler 136. Atermination labeler 136 includes an electronic display (e.g., a liquidcrystal display (LCD)) and components to determine which field device ordevices 142A-C, 152A-C is/are connected to the I/O slice 134A-Fcorresponding to the termination labeler 136. The example I/O slices134A-F and/or the example labelers 136 may also include any numberand/or type(s) of light emitting diodes (LEDs) that may be used todisplay status information (e.g., a device tag mismatch). Additionallyor alternatively, a termination labeler 136 may implement a conventionalwire marking system rather than an electronic display. Moreover, thetermination labeler 136 may not implement an electronic display andinstead provide information and/or data to be displayed to acommunicatively coupled device, such as the example tagger 160

In some example implementations, the displays 136 and/or the LEDs aremounted on and/or to the wiring cabinet 132 instead of the I/O slices134A-F. Each of the displays 136 is associated with a respective I/Oslice socket. In this manner, when an I/O slice 134A-F is removed fromthe wiring cabinet 132, a corresponding display 136 remains in thewiring cabinet 132 for use by a subsequently connected and/or insertedI/O slice 134A-F.

Example manners of implementing the example I/O slices 134A-F, formarshalling field devices 142A-C, 152A-C via wiring cabinets 132 and/orusing I/O ports 126A, 126B and I/O gateways 124 are described in U.S.patent application Ser. No. 11/533,259, entitled “Apparatus and Methodsto Communicatively Couple Field Devices to Controllers in a ProcessControl System,” and filed on Sep. 19, 2006. U.S. patent applicationSer. No. 11/533,259 is hereby incorporated by reference in its entirety.

To route signals between the field devices 142A-C, 152A-C and the wiringcabinet 132, each of the process areas 140, 150 may include any numberof field junction boxes (including possibly zero), two of which areillustrated in FIG. 1 with reference numerals 144 and 154. In theillustrated example, the field devices 142A-C are communicativelycoupled to the example field junction box 144 and the field devices152A-C are communicatively coupled to the example field junction box 154via electrically conductive, wireless, and/or optical communicationmedia. For example, the field junction boxes 144, 154 may be providedwith one or more wired, wireless, and/or optical data transceivers tocommunicate with wired, wireless, and/or optical transceivers of thefield devices 142A-C, 152A-C. In the illustrated example, the fieldjunction box 154 is communicatively coupled wirelessly to the fielddevice 152C. In an alternative example implementation, the wiringcabinet 132 may be omitted such that signals from the field devices142A-C, 152A-C are routed from the field junction boxes 144, 154directly to the I/O ports 126A, 126B of the I/O gateway 124. In yetanother example implementation, the field junction boxes 144, 154 may beomitted such that the field devices 142A-C, 152A-C are directlyconnected to the example I/O slices 134A-F.

The example field devices 142A-C, 152A-C of FIG. 1 may be Fieldbuscompliant valves, actuators, sensors, etc., in which case the fielddevices 142A-C, 152A-C communicate via a digital data bus using thewell-known Fieldbus communication protocol. Of course, other types offield devices 142A-C, 152A-C and communication protocols could be usedinstead. For example, the field devices 142A-C, 152A-C could instead beProfibus, HART, or AS-i compliant devices that communicate via the databus using the well-known Profibus and HART communication protocols. Insome example implementations, the field devices 142A-C, 152A-C cancommunicate information using analog communications or discretecommunications instead of digital communications. In addition, thecommunication protocols can be used to communicate informationassociated with different data types.

The example I/O slices 134A-F of FIG. 1 are communicatively coupled tothe field junction boxes 144, 154 via respective multi-conductor cables146 and 156 (e.g., a multi-bus cable). In an alternative exampleimplementation in which the wiring cabinet 132 is omitted, the exampleI/O slices 134A-F can be installed in respective ones of the examplefield junction boxes 144, 154.

The illustrated example of FIG. 1 depicts a point-to-point configurationin which each conductor or conductor pair (e.g., bus, twisted paircommunication medium, two-wire communication medium, etc.) in themulti-conductor cables 146, 156 communicates information uniquelyassociated with a respective one of the field devices 142A-C, 152A-C.For example, the multi-conductor cable 146 includes a first conductor148A, a second conductor 148B, and a third conductor 148C. Specifically,the first conductor 148A is used to form a first data bus configured tocommunicate information between the I/O slice 134A and the field device142A, the second conductor 148B is used to form a second data busconfigured to communicate information between the I/O slice 134B and thefield device 142B, and the third conductor 148C is used to form a thirddata bus configured to communicate information between the I/O slice134C and the field device 142C. In an alternative example implementationusing a multi-drop wiring configuration, each of the I/O slices 134A-Fcan be communicatively coupled with one or more field devices 142A-C,152A-C. For example, in a multi-drop configuration, the I/O slice 134Acan be communicatively coupled to the field device 142A and to anotherfield device (not shown) via the first conductor 148A. In some exampleimplementations, an I/O slice 134A-F can be configured to communicatewirelessly with a plurality of field devices 142A-C, 152A-C using awireless mesh network.

Each of the example I/O slices 134A-F of FIG. 1 may be configured tocommunicate with a respective one of the field devices 142A-C, 152A-Cusing a different data and/or signal type. For example, the I/O slice134A may include a digital field device interface to communicate withthe field device 142A using digital data and/or signals while the I/Oslice 134B may include an analog field device interface to communicatewith the field device 142B using analog data and/or signals.

The example wiring cabinet 132 and the example I/O gateway 124 of FIG. 1use one or more universal I/O buses (e.g., a common or sharedcommunication bus) to communicatively couple one or more I/O slices134A-F to one or more of the I/O ports 126A, 126B communicativelycoupled to the process controller 122. Two example universal I/O busesare illustrated in FIG. 1 with reference numerals 128A and 128B.Universal I/O buses may be implemented in accordance with any wiredand/or wireless standard(s), specification(s) and/or protocol(s) suchas, for example, RS-485, Ethernet, universal serial bus (USB), Instituteof Electrical and Electronics Engineers (IEEE) 1394, IEEE 802.11(commonly known as Wi-Fi), Bluetooth, etc.

The example I/O slices 134A-F of FIG. 1 are configured to receive fielddevice information from the example field devices 142A-C, 152A-C via thefield device buses 146, 156 and to communicate the field deviceinformation to the I/O ports 126A-B via the universal I/O buses 128A,128B by, for example, packetizing the field device information andcommunicating the packetized information to the I/O ports 126A, 126B viathe universal I/O buses 128A, 128B. The field device information mayinclude, for example, field device identification information (e.g.,device tags, electronic serial numbers, etc.), field device statusinformation (e.g., communication status, diagnostic health information(open loop, short, etc.)), field device activity information (e.g.,process variable (PV) values), field device description information(e.g., field device type or function such as, for example, valveactuator, temperature sensor, pressure sensor, flow sensor, etc.), fielddevice connection configuration information (e.g., multi-drop busconnection, point-to-point connection, etc.), field device bus orsegment identification information (e.g., field device bus or fielddevice segment via which field device is communicatively coupled totermination module), and/or field device data type information (e.g., adata type descriptor indicative of the data type used by a particularfield device). The example I/O ports 126A, 126B can extract the fielddevice information received via the example universal I/O buses 128A,128B and communicate the field device information to the example processcontroller 122, which can then communicate some or all of theinformation to one or more workstation terminals 112 for subsequentanalysis.

To communicate field device information (e.g., commands, instructions,queries, threshold activity values (e.g., threshold PV values), etc.)from workstation terminals 112 and/or the process controller(s) 122 tothe example field devices 142A-C, 152A-C, the example I/O ports 126A,126B packetize the field device information and communicate thepacketized field device information to the example I/O slices 134A-F.Each of the I/O slices 134A-F extracts or depacketizes respective fielddevice information from the packetized communications received from arespective I/O port 126A, 126B and communicates the field deviceinformation to a respective field device 142A-C, 152A-C.

The example I/O buses 128A, 128B of FIG. 1 are configured to communicateinformation between the I/O ports 126A, 126B and the example I/O slices134A-F. The I/O ports 126A, 126B and the I/O slices 134A-F use anaddressing scheme to enable the I/O ports 126A, 126B to identify whichinformation corresponds to which one of the I/O slices 134A-F, and toenable the I/O ports 126A, 126B and the I/O slices 134A-F to determinewhich information corresponds to which of the field devices 142A-C,152A-C. When one of the I/O slices 134A-F is connected to one of the I/Oports 126A, 126B, that I/O port 126A, 126B automatically obtains anaddress for the I/O slice 134A-F. In this manner, the I/O slices 134A-Fcan be communicatively coupled anywhere on the respective buses 128A,128B without having to manually supply addresses to the I/O ports 126A,126B and without having to individually wire each of the I/O slices134A-F to the I/O ports 126A, 126B.

Using the example universal I/O buses 128A, 128B of FIG. 1 to exchangeinformation between the process controller 122 and the I/O slices 134A-Fenables defining field device-to-I/O port/channel connection routinglater in a design and/or installation process. For example, the I/Oslices 134A-F can be placed in various locations within the wiringcabinet 132 while maintaining access to a respective one of the I/Obuses 128A, 128B.

In the illustrated example, each of the example I/O ports 126A, 128Bincludes a data structure 129 that stores the device tags for fielddevices (e.g., the field devices 142A-C, 152A-C) that are assigned tocommunicate with the I/O port 126A, 126B via its respective universalI/O bus 128A, 128B. The example data structures 129 can be populated byengineers, operators, and/or users via the workstation 112 using, forexample, a configuration application.

Additionally or alternatively, the data structures 129 may beautomatically generated by the workstation 112. For example, the exampleI/O gateway 124 may be directed to auto-sense which I/O slices 134A-Fare communicatively coupled to its I/O ports 126A, 126B to obtain thefield device tags for each field device 142A-C, 152A-C communicativelycoupled to the sensed I/O slices 134A-F. For example, from the DeltaV™Explorer™ a user of the workstation 112 can execute a function (via, forexample, a button, menu, etc.) that causes the I/O gateway 124 toperform the auto-sensing. The I/O gateway 124 also obtains and/ordetermines the I/O channel and/or slot of the universal I/O bus 128A,128B carrying the field device data for the sensed field devices 142A-C,152A-C. The example I/O gateway 124 reports the collected information tothe workstation 112.

At the example workstation 112 of FIG. 1, the workstation 112 compareseach of the field device tags collected by the example I/O gateway 124with the field device tags previously configured for control processmodules. When a match is located, the input/output information for thefield device 142A-C, 152A-C (e.g., universal bus I/O identifier,universal I/O bus slot and/or channel) is bound to the control processmodule for the field device 142A-C, 152A-C. When the control processmodule is subsequently downloaded to the process controller 122, theprocess controller 122 is enabled to communicate with the field device142A-C, 152A-C based on the bound input/output information. The fielddevice input/output information may also be used by the workstation 112to configure the data structures 129 that are used by the I/O ports126A, 126B and/or, more generally, by the example I/O gateway 124. Inthis fashion, the configuration of process control system inputs andoutputs can be automatically performed based on the actual wiring of aprocess control system.

In one example where input/output information is bound to a block of aprocess control module during configuration of the process controlmodule, the example I/O gateway 124 of FIG. 1 can be directed toauto-sense which I/O slices 134A-F are communicatively coupled to itsI/O ports 126A, 126B and to obtain the field device tags for each fielddevice 142A-C, 152A-C communicatively coupled to the sensed I/O slices134A-F. For example, from the DeltaV™ Explorer™ a user of theworkstation 112 can execute a function (via, for example, a button,menu, etc.) that causes the I/O gateway 124 to perform the auto-sensing.The I/O gateway 124 also obtains and/or determines the I/O channeland/or slot of the universal I/O bus 128A, 128B carrying the fielddevice data for the sensed field devices 142A-C, 152A-C. The example I/Ogateway 124 compares the sensed field device tags and input/outputinformation with the field device tags and input/output informationprovisioned into the configuration data 129. When for a particular fielddevice tag a mismatch is detected between sensed input/outputinformation and provisioned input/output information, the I/O gateway124 provides an indication of the process control system I/O mismatchby, for example, lighting a mismatch configuration LED for thecorresponding I/O slice 134A-F. Additionally, if an I/O slice 134A-Fdoes not have a field device tag for an attached field device 142A-C,152A-C, the I/O gateway 124 can also display a potential errorconfiguration (e.g., by lighting a different LED). Such lit LEDs orother indicators may be used by an installer and/or technician torecognize that a field device mismatch and/or unprogrammed I/O slice134A-F condition is present. Additionally or alternatively, the I/Ogateway 124 provides an indication of the I/O mismatch to theworkstation 112. Such mismatch indications can be used by an engineerand/or installer to identify the incorrectly wired and/or configuredfield device 142A-C, 152A-C. For example, a user of the workstation 112can use a diagnostic tool (e.g., the DeltaV™ Diagnostic explorer) toretrieve information on the sensed and configured device tags as well asthe sensed and configured I/O port and/or I/O channel information inorder to determine if the configuration or the wiring is at fault. Oncea mis-wiring and/or a mis-configuration is identified and corrected, theprocess can be repeated to verify the modified control system. In thisfashion, the configuration of process control system inputs and outputscan be automatically verified against the actual process control systemwiring.

FIG. 2 illustrates an example user interface 200 that displaysassignment and/or configuration of device tags to function blocks. Todisplay a hierarchy of control modules, the example user interface 200of FIG. 2 has a left-hand portion 205. The example left portion 205displays a list of units 210 for a process area 215 named “AREA_A.”

To display function blocks and parameters, the example display 200 ofFIG. 2 includes a right-hand portion 220. The example right-hand portion220 of FIG. 2 displays a list of function blocks and/or parametersassociated with a selected one of the units 210, e.g., an example “MOD1”unit 225. For each function block 230 of example MOD1 unit 225, theexample right-hand portion 220 includes a device tag 235. For example,an example function block AI1 has been configured to the field device142A-C, 152A-C that has the field device tag of “TT-101.” As describedin U.S. Pat. No. 7,043,311, field device tags can be configured and/orassigned to function blocks by importing instrument lists in the form ofa spreadsheet, comma-separated values and/or XML files.

Persons of ordinary skill in the art will readily appreciate that theexample hierarchy illustrated in the example left-hand portion 205 ofFIG. 2 is merely illustrative and may be modified in any number of ways.For example, the example port and channel components 250 shown in FIG. 2may be omitted so that a field device tag need only be associated withan I/O gateway 124. The I/O gateway 124 could use any number and/ortype(s) of addressing schemes to identify and/or communicate with aparticular field device 142A-C, 152A-C. However, such addressing schemescould be implemented with an installer's and/or operator's knowledgeand/or involvement. Moreover, such addressing schemes need not be tiedto the use of I/O ports 126A-B and/or channels of I/O ports.

FIG. 3 is a flowchart representative of an example process that may beperformed to install one or more of the example field devices 142A-C,152A-C. FIGS. 4 and 5 are flowcharts representative of example processesthat may be performed to configure process input/output (I/O) for moduleclass objects. FIGS. 6 and 7 are flowcharts representative of exampleprocesses that may be performed to configure the example I/O gateway124. The example processes of FIGS. 3, 4, 5, 6 and/or 7 may be performedby a processor, a controller and/or any other suitable processingdevice. For example, the example processes of FIGS. 3, 4, 5, 6 and/or 7may be embodied in coded instructions stored on a tangible medium suchas a flash memory, a read-only memory (ROM) and/or random-access memory(RAM) associated with a processor (e.g., the example processor 805discussed below in connection with FIG. 8). Alternatively, some or allof the example processes of FIGS. 3, 4, 5, 6 and/or 7 may be implementedusing any combination(s) of application specific integrated circuit(s)(ASIC(s)), programmable logic device(s) (PLD(s)), field programmablelogic device(s) (FPLD(s)), discrete logic, hardware, firmware, etc.Also, some or all of the example processes of FIGS. 3, 4, 5, 6 and/or 7may be implemented manually or as any combination(s) of any of theforegoing techniques, for example, any combination of firmware,software, discrete logic and/or hardware. Further, although the exampleprocesses of FIGS. 3, 4, 5, 6 and 7 are described with reference to theflowcharts of FIGS. 3, 4, 5, 6 and 7, persons of ordinary skill in theart will readily appreciate that many other methods of implementing theprocesses of FIGS. 3, 4, 5, 6 and/or 7 may be employed. For example, theorder of execution of the blocks may be changed, and/or some of theblocks described may be changed, eliminated, sub-divided, or combined.Additionally, persons of ordinary skill in the art will appreciate thatany or all of the example processes of FIGS. 3, 4, 5, 6 and/or 7 may becarried out sequentially and/or carried out in parallel by, for example,separate processing threads, processors, devices, discrete logic,circuits, etc.

The example process of FIG. 3 beings with an installer and/or technicianinstalling and/or inserting an I/O slice (e.g., one of the example I/Oslices 134A-F of FIG. 1) into a wiring cabinet (e.g., the example wiringcabinet 132) (block 305). The installer and/or technician wires one ormore field devices (e.g., any of the example field devices 142A-C,152A-C) to the I/O slice (block 310). If the connected field devices isnot a smart field device (block 312), the installer and/or technicianconfigures and/or programs the I/O slice with the device tag for theconnected field devices (block 315). If the connected field devices is asmart field device (block 312), the installer and/or technicianconfigures and/or programs smart field device with the device tag (block317). If the smart field device is configured with the device tag (block317), the I/O slice can automatically obtain the device tag for thesmart field device from the smart field device. If there are more fielddevices to install (block 320), the example process returns to block 305to install the next I/O slice. If no more field devices need to beinstalled (block 320), the example process of FIG. 3 ends.

The example process of FIG. 4 may be performed configure process controlsystem inputs and outputs for an example process control system. Theexample process of FIG. 4 begins with a configuration engineer creatinga process control module (block 405). The engineer selects a functionblock of the control module (block 410) and configures a device tag tothe control module (block 415). If there are more function blocks toconfigure (block 420), control returns to block 410 to configure thefunction block. Persons of ordinary skill in the art will readilyappreciate that device tags may be configured to function blocks (blocks410, 415 and 420) by importing a spreadsheet, comma-separated valuesand/or an XML file.

The configuration engineer assigns the control module to a processcontroller (e.g., the example process controller 122 of FIG. 1) (block425) and saves the process control module (block 430). If more controlmodules are to be created and/or configured (block 435), control returnsto block 405 to create and/or configure another control module.

If no more control modules are to be created and/or configured (block435), the configuration engineer, an installer and/or a technician addsand/or commissions an I/O gateway (e.g., the example I/O gateway 124 ofFIG. 1) (block 440). As directed by the configuration engineer, aconfiguration application directs the I/O gateway to auto-sense andreport connected I/O slices and field devices (block 445). Theconfiguration application compares the device tags of sensed fielddevices to those previously configured to field devices and binds I/Oinformation for sensed field devices to corresponding function blocks(block 450). Control then exits from the example process of FIG. 4.

FIG. 5 illustrates another example process that may be performed toconfigure process control system inputs and outputs for an exampleprocess control system. The example process of FIG. 5 begins with aconfiguration engineer creating a process control module (block 505).The engineer selects a function block of the control module (block 510)and configures a device tag to the control module (block 515). Theengineer also configures an I/O port and I/O channel to the functionblock (block 520). If there are more function blocks to configure (block525), control returns to block 510 to configure the function block.Persons of ordinary skill in the art will readily appreciate that devicetags may be configured to function blocks (blocks 510, 515, 520 and 525)by importing a spreadsheet, comma-separated values and/or an XML file.

The configuration engineer assigns the control module to a processcontroller (e.g., the example process controller 122 of FIG. 1) (block530) and saves the process control module (block 535). If more controlmodules are to be created and/or configured (block 540), control returnsto block 505 to create and/or configure another control module.

If no more control modules are to be created and/or configured (block540), the configuration engineer, an installer and/or a technician addsand/or commissions an I/O gateway (e.g., the example I/O gateway 124 ofFIG. 1) (block 550). As directed by the configuration engineer, aconfiguration application creates and downloads an I/O configuration(e.g., the example configuration 129 of FIG. 1) to the I/O gateway(block 555). The configuration application then directs the I/O gatewayto auto-sense connected I/O slices and field devices and compare thesame to those provisioned in the I/O configuration (block 560). If thereare no device tag mismatches (block 565), control exits from the exampleprocess of FIG. 5. If there is at least one device tag mismatch (block565), the configuration engineer, the technician and/or the installeridentify and correct the configuration and/or wiring error (block 570).Control then returns to block 560 to check for device tag mismatches.

The example process of FIG. 6 may be performed to configure an I/Ogateway (e.g., the example I/O gateway 124 of FIG. 1). The exampleprocess of FIG. 6 begins when the I/O gateway is instructed (e.g., by anapplication executing on the example workstation 112) to sense andreport connected field devices (e.g., the example field devices 142A-C,152A-C). The I/O gateway acquires the device tags for field devicesconnected to a first I/O slice (block 605) and reports the device tagsto the workstation (block 610). If there are more I/O slices (block615), control returns to block 605 to acquire the devices tags from thenext I/O slice. If there are no more I/O slices, control exits from theexample process of FIG. 6.

FIG. 7 illustrates another example process that may be performed toconfigure an I/O gateway (e.g., the example I/O gateway 124 of FIG. 1).The example process of FIG. 7 begins when the I/O gateway is instructed(e.g., by an application executing on the example workstation 112) tosense and report connected field devices (e.g., the example fielddevices 142A-C, 152A-C). The I/O gateway acquires the device tags forfield devices connected to a first I/O slice (block 705) and comparesthe acquired device tags to those provisioned into the I/O gateway(e.g., the example configuration 129) (block 710). If one or more of thedevice tags do not match (block 715), the I/O gateway displays an errorindication on and/or associated with the I/O slice (block 720). The I/Ogateway may, additionally or alternatively, provide a device tagmismatch indication to the workstation at block 720. An error indicationmay also be provided and/or displayed if device tags for one or morefield devices are not available for a connected field device. If nodevice tag mismatch and/or missing tag error is detected (block 720),control proceeds to block 720 without displaying an error indication.

Continuing at block 720, if there are more I/O slices (block 725),control returns to block 705 to acquire the devices tags from the nextI/O slice. If there are no more I/O slices, control exits from theexample process of FIG. 7.

FIG. 8 is a schematic diagram of an example processor platform 800 thatmay be used and/or programmed to implement any or all of the exampleworkstation 112, the example process controller 122 and/or the exampleI/O gateway 124 of FIG. 1. For example, the processor platform 800 canbe implemented by one or more general purpose processors, processorcores, microcontrollers, etc.

The processor platform 800 of the example of FIG. 8 includes at leastone general purpose programmable processor 805. The processor 805executes coded instructions 810 and/or 812 present in main memory of theprocessor 805 (e.g., within a RAM 815 and/or a ROM 820). The processor805 may be any type of processing unit, such as a processor core, aprocessor and/or a microcontroller. The processor 805 may execute, amongother things, the example processes of FIGS. 3, 4, 5, 6 and/or 7 toimplement any or all of the example workstation 112, the example processcontroller 122 and/or the example I/O gateway 124 described herein. Theprocessor 805 is in communication with the main memory (including a ROM820 and/or the RAM 815) via a bus 825. The RAM 815 may be implemented byDRAM, SDRAM, and/or any other type of RAM device, and ROM may beimplemented by flash memory and/or any other desired type of memorydevice. Access to the memory 815 and 820 may be controlled by a memorycontroller (not shown). The RAM 815 may be used to store and/orimplement, for example, the example configuration 129 of FIG. 1.

The processor platform 800 also includes an interface circuit 830. Theinterface circuit 830 may be implemented by any type of interfacestandard, such as a USB interface, a Bluetooth interface, an externalmemory interface, serial port, general purpose input/output, etc. One ormore input devices 835 and one or more output devices 840 are connectedto the interface circuit 830. The input devices 835 and/or outputdevices 840 may be used to implement, for example, the universal I/Obuses 128A, 128B.

Although certain methods, apparatus, and articles of manufacture havebeen described herein, the scope of coverage of this patent is notlimited thereto. To the contrary, this patent covers all methods,apparatus, and articles of manufacture fairly falling within the scopeof the appended claims either literally or under the doctrine ofequivalents.

1. A method comprising: obtaining a tag of a process control device froman input/output device; and associating the process control device witha process control module based on the obtained tag.
 2. A method asdefined in claim 1, further comprising: configuring the process controlmodule with a second tag for a process control device; and binding theprocess control device to the process control module when the obtainedtag matches the second tag.
 3. A method as defined in claim 1, whereinthe input/output device is an input/output slice, and the processcontrol device is a field device.
 4. A method as defined in claim 1,further comprising using a module class object to implement the processcontrol module.
 5. A method as defined in claim 1, further comprisingconfiguring the input/output device with the tag of the process controldevice.
 6. A method as defined in claim 5, wherein configuring theinput/output device with the tag of the process control devicecomprises: wiring the process control device to the input/output device;and programming the process control device with the tag, wherein theinput/output device obtains the tag from the process control device. 7.A method as defined in claim 5, wherein configuring the input/outputdevice with the tag of the process control device comprises: wiring theprocess control device to the input/output device; and programming theinput/output device with the tag.
 8. A method as defined in claim 7,where the input/output device is programmed with the tag by an installerof the process control device.
 9. A method as defined in claim 1,wherein obtaining the tag of the process control device from theinput/output device comprises directing an input/output gateway to sensewhether the input/output device is present, the input/output gateway toread the tag from the input/output device when the input/output deviceis present.
 10. A method as defined in claim 1, wherein associating theprocess control device with the process control module based on theobtained tag comprises: comparing a channel identifier associated withthe tag obtained from the input/output device; comparing the channelidentifier with a second channel identifier configured in the processcontrol module for the process control device; and providing an errorindicator when the channel identifier and the second channel identifierdo not match.
 11. A method comprising: receiving a configuration thatassociates a tag of a process control device with an input/outputchannel; obtaining a second tag from an input/output device electricallycoupled to the process control device; and providing an error indicatorwhen the tag and the second tag do not match.
 12. A method as defined inclaim 11, further comprising: wiring the process control device to theinput/output device; and programming the input/output device with thesecond tag.
 13. A method as defined in claim 11, wherein theconfiguration that associates the tag of the process control device withthe input/output channel is received at an input/output gateway of aprocess control system.
 14. A method as defined in claim 11, wherein theinput/output device is located in a marshalling cabinet for a processcontrol system.
 15. A method as defined in claim 11, wherein theinput/output device is implemented by an input/output slice.
 16. Amethod as defined in claim 11, wherein the configuration associates thetag with an input/output port, and the error indicator is provided whenthe input/output port does not correspond to a second input/output portto which the input/output device is connected.
 17. A method as definedin claim 11, where the second tag is provided to the input/output deviceby the process control device.
 18. A method as defined in claim 11,where the second tag is provided to the input/output device by aninstaller of the process control device.
 19. An article of manufacturestoring machine readable instructions which, when executed, cause amachine to: receive a configuration that associates a tag of a processcontrol device with an input/output channel; obtain a second tag from aninput/output device electrically coupled to the process control device;and provide an error indicator when the tag and the second tag do notmatch.
 20. An article of manufacture as defined in claim 19, wherein themachine readable instructions, when executed, cause the machine toimplement an input/output gateway of a process control system.
 21. Anarticle of manufacture as defined in claim 19, wherein the input/outputdevice is located in a marshalling cabinet for a process control system.22. An article of manufacture as defined in claim 19, wherein theinput/output device is implemented by an input/output slice.
 23. Anarticle of manufacture as defined in claim 19, wherein the configurationassociates the tag with an input/output port, and wherein the machinereadable instructions, when executed, cause the machine to provide theerror indicator when the input/output port does not correspond to asecond input/output port to which the input/output device is connected.24. An apparatus comprising: a memory; and a processor coupled to thememory and programmed to: receive a configuration that associates a tagof a process control device with an input/output channel; obtain asecond tag from an input/output device electrically coupled to theprocess control device; and provide an error indicator when the tag andthe second tag do not match.
 25. An apparatus as defined in claim 24,wherein the apparatus implements an input/output gateway of a processcontrol system.
 26. An apparatus as defined in claim 24, wherein theinput/output device is located in a marshalling cabinet for a processcontrol system.
 27. An apparatus as defined in claim 24, wherein theinput/output device is implemented by an input/output slice.
 28. Anapparatus as defined in claim 24, wherein the configuration associatesthe tag with an input/output port, and wherein the processor isprogrammed to provide the error indicator when the input/output portdoes not correspond to a second input/output port to which theinput/output device is connected.